Metacomputation-Based Compiler Architecture

نویسندگان

  • William L. Harrison
  • Samuel N. Kamin
چکیده

This paper presents a modular and extensible style of language speci cation based on metacomputations. This style uses two monads to factor the static and dynamic parts of the speci cation, thereby staging the speci cation and achieving strong binding-time separation. Because metacomputations are de ned in terms of monads, they can be constructed modularly and extensibly using monad transformers. A number of language constructs are speci ed: expressions, controlow, imperative features, and block structure. Metacomputation-style speci cation lends itself to semantics-directed compilation, which we demonstrate by creating a modular compiler for a block-structured, imperative while language.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compilation as Metacomputation: Binding Time Separation in Modular Compilers (ex Tende D Abstract)

This paper presents a modular and extensible style of language speciication based on meta-computations. This style uses two monads to factor the static and dynamic parts of the speci-cation, thereby staging the speciication and achieving strong binding-time separation. Because metacomputations are deened in terms of monads, they can be constructed modularly and ex-tensibly using monad transform...

متن کامل

Dynamically Adaptable Software with Metacomputations in a Staged Language

Pro le-driven compiler optimizations take advantage of information gathered at runtime to re-compile programs into more eÆcient code. Such optimizations appear to be more easily incorporated within a semantics-directed compiler structure than within traditional compiler structure. We present a case study in which a metacomputation-based reference compiler for a small imperative language convert...

متن کامل

A Roadmap to Metacomputation by Supercompilation

This paper gives a gentle introduction to Turchin's super-compilation and its applications in metacomputation with an emphasis on recent developments. First, a complete supercompiler, including positive driving and generalization, is deened for a functional language and illustrated with examples. Then a taxonomy of related transformers is given and compared to the supercompiler. Finally, we put...

متن کامل

Effective Use of Metacomputation for Structuring Operating Systems

To respond to continuing hardware advances and changing application demands, operating systems must be flexible. Recently developed metacomputation techniques can provide the desired flexibility. The π architecture investigates the use of metaobject protocols to tailor subsystems of operating systems. It allows effective utilization of events and resources through interfaces for tailorable obje...

متن کامل

A Metacomputation Toolkit for a Subset of F] and Its Application to Software Testing Towards Metacomputation for the Masses

We present an on-going experiment to develop a practical metacomputation toolkit for F#. There are – apart from the better known supercompilation – other mature and potentially useful methods stemming from metacomputation theory: program inversion and tabulation, neighborhood analysis. Although implementations of these methods have existed since many years, they are typically experimental tools...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000